Programmable semiconductor devices include programmable read only memories (“PROMs”), programmable logic devices (“PLDs”), and programmable gate arrays. One type of programmable element suitable for one or more of these device types is an antifuse.
An antifuse is a structure which when unprogrammed does not electrically couple its first and second electrodes, but which, when programmed, permanently electrically couples the first and second electrodes. An antifuse is programmed by applying sufficient voltage (“programming voltage”) between its first and second electrodes. One type of antifuse comprises a high resistivity material in which a low resistivity filament is formed when the material is heated by electrical current. Amorphous silicon, silicon dioxide and silicon nitride have been used successfully as the high resistivity materials. See, for example, U.S. Pat. No. 4,823,181 issued Apr. 18, 1989 to Mohsen et al.; U.S. Pat. No. 5,557,136 issued Sep. 17, 1996 to Gordon et al; U.S. Pat. No. 5,308,795 issued May 3, 1994 to Hawley et al.; U.S. Pat. No. 5,233,217 issued Aug. 3, 1993 to Dixit et al.; U.S. Pat. No. 6,107,165 issued Aug. 22, 2000 to Jain et al.; B. Cook et al., “Amorphous Silicon Antifuse Technology for Bipolar PROMs,” 1986 Bipolar Circuits and Technology Meeting, pages 99–100.
An antifuse, when programmed, should have a low resistance, particularly because a programmable device will typically include many programmed antifuses. It was generally believed that in order to obtain lower resistance one needs to raise “programming” current (the current passing through the antifuse during programming). Namely, the physics of antifuse programming was believed to be as follows. When the programming voltage is applied between the antifuse terminals, the high resistivity material breaks down at its weakest portion. Current flows through that portion and heats the material. The heat creates a conductive filament through the material. As the filament grows in size, the resistance across the material decreases. Hence, the temperature of the material also decreases. Gradually the temperature becomes so low that the conductive filament stops growing. See Hamdy et al., “Dielectric Based Antifuse for Logic and Memory ICs,” IEDM 1988, pages 786–789. In order to reduce the resistance further, the current has to be increased to generate more heat.
As discussed in U.S. Pat. No. 5,243,226, issued Sep. 7, 1993, to Chan, which is incorporated herein by reference, the resistance in a programmed antifuse is decreased if the antifuse is programmed using multiple current pulses having opposite polarity. Namely, a first programming current pulse is followed by a second pulse in the opposite direction. The first pulse programs the antifuse, i.e., drives a conductive filament from one electrode, through the programmable material and into contact with the other electrode. The second pulse reduces the resistance even if the first pulse was of such duration that the resistance stopped decreasing during the first pulse. Further, the second pulse reduces the resistance even though the magnitude of the second pulse current is not larger than the magnitude of the first pulse current. As discussed in U.S. Pat. No. 5,243,226, the best results were believed to be achieved if the magnitude of the second pulse is lower than the magnitude of the first pulse. Thus, for example, it was believed that the second pulse provided a significant reduction in resistance for a greater number of antifuses if the second pulse is 20–25% lower in magnitude than the first pulse.
Due to the large number of antifuses that must be programmed in a conventional programmable device, there is a desire to reduce the resistance in a programmed antifuse and to reduce the risk that any particular antifuse will not be programmed, i.e., increase the yield of programmed antifuses.